查询某张表分布在哪些 Store 上
Last edited by longfangsong at 2021-04-19法1
show table t regions;
即可。
法2
使用 SQL 语句:
SELECT p.STORE_ID, COUNT(s.REGION_ID) PEER_COUNT FROM INFORMATION_SCHEMA.TIKV_REGION_STATUS s JOIN INFORMATION_SCHEMA.TIKV_REGION_PEERS p on s.REGION_ID = p.REGION_ID WHERE TABLE_NAME = '<table_name>' GROUP BY p.STORE_ID ORDER BY PEER_COUNT DESC;
替换掉其中的 <table_name>
即可。
如果要筛选出 leader,添加条件 p.is_leader = 1
即可。
另外表上的 index
可能并不和表本身分布在同一个 Store 上,查 index
分布的 SQL 如下:
select count(s.region_id) cnt, s.index_name, p.store_id from INFORMATION_SCHEMA.TIKV_REGION_STATUS s join INFORMATION_SCHEMA.tikv_region_peers p on s.region_id = p.region_id where s.table_name = '<table_name>' group by index_name, p.store_id order by index_name,cnt desc;
同样可以添加条件 p.is_leader = 1
来筛选出 leader。
Links
方法2引用自PD Oncall 参考答案